/**
 * @author casazaft
 */
Package("xclab.mvc.patterns.mediator").Class("Mediator", {
        Mediator: function(name, viewComponent){
			if(typeof name == 'object'){
				viewComponent = name;
				name = this.getClass().NAME;
			}
            this.mediatorName = name;
            this.viewComponent = viewComponent;
        },
        Methods: {
            getMediatorName: function(){
                return this.mediatorName;
            },
            setViewComponent: function(viewComponent){
                this.viewComponent = viewComponent;
            },
            getViewComponent: function(){
                return this.viewComponent;
            },
            listNotificationInterests: function(){
                return [];
            },
            handleNotification: function(notification){
            
            },
            onRegister: function(){
            
            },
            onRemove: function(){
            
            }
        },
        ClassProperties: {
            NAME: "Mediator"
        },
        Extends: xclab.mvc.patterns.observer.Notifier
    })

